// baseModalMenu.ts
import { IDomEditor, IButtonMenu } from '@wangeditor/editor';
import { LINK_ICON_SVG } from '../../icon-svg';

class VariableButton implements IButtonMenu {
  title: string;
  tag: string;
  $ele: HTMLDivElement;
  $root: any;
  ifInit = false;
  iconSvg?: string | undefined;

  constructor() {
    this.title = '插入变量'; // 自定义菜单标题，鼠标移入菜单展示的文字
    this.iconSvg = LINK_ICON_SVG;
    this.tag = 'button';

    this.$ele = document.createElement('div');
  }

  // 点击菜单时触发的函数
  exec(editor: IDomEditor, value: string | boolean) {
    // @ts-ignore
    editor.showVariable();
  }

  // 获取菜单执行时的 value ，用不到则返回空 字符串或 false
  getValue(editor: IDomEditor): string | boolean {
    return false;
  }

  // 菜单是否需要激活（如选中加粗文本，“加粗”菜单会激活），用不到则返回 false
  isActive(editor: IDomEditor): boolean {
    // TS 语法
    return false;
  }

  // 菜单是否需要禁用（如选中 H1 ，“引用”菜单被禁用），用不到则返回 false
  isDisabled(editor: IDomEditor): boolean {
    return false;
  }
}
export default VariableButton;
